POV-Ray : Newsgroups : povray.binaries.images : blob question, 5k gif : Re: blob question, 5k gif Server Time
2 Oct 2024 12:25:37 EDT (-0400)
  Re: blob question, 5k gif  
From: Bob Hughes
Date: 2 May 2000 18:04:19
Message: <390f50e3@news.povray.org>
In doing such shapes I guess the old saying "nothing's ever easy"
would apply.
I wanted to check out what David H. has said here and came up with
the following:

#declare YTran=0;
#declare Scaler=<1,.5,1>;

blob {
 threshold .5
 #while (YTran <= 10)
  sphere {0,1,1
   scale Scaler
   translate YTran*y
  }
  #declare YTran=YTran+0.25;
  #declare Scaler=Scaler+0.1
   *(pow(YTran, .5 / 1)*.5); // borrowed from clockmod.inc
 #end
  sphere {0,1,-2
   scale Scaler*<.6,.8,.6>
   translate YTran*y*1.25
  }

 pigment {rgb <0.65,0.8,0.65>}

  translate -6*x
}

// rotate a 2-D outline of points around the Y axis to create a 3-D shape
lathe {
  cubic_spline
  12, // number of points
   // the list of <u,v> points
  <0, 0>, // keep end closed
  <0, 0>,
  <.5, 1>,
  <1, 4>,
  <2, 7>,
  <4.5, 10.25>,
  <4, 11>,
  <3.25, 10.5>,
  <2.75, 10.33>,
  <2, 10>,
  <0, 10>,
  <0, 10> // keep end closed

 pigment {rgb <0.65,0.8,0.65>}

  translate 6*x
}

#declare LCX = 0;
#declare LCY = 20;
#declare LCZ = -30;

light_source { <LCX,LCY,LCZ> color rgb <1.5,1.5,1.5>
}
camera{
  location  <LCX,LCY,LCZ>
  angle 40
  look_at   <0,7,0>
}


To make a long story short, I figured a lathe would be better suited
for doing this sort of object.  I could never get the negative strength
blob component to do what Ross had there already.
The lathe can be some trouble sometimes to get the curvatures
correct but it does seem the lesser of the two evils to me.

Bob

"David Heys" <sou### [at] gcinet> wrote in message news:390f356d@news.povray.org...
| It'd help to see the code. Beyond that, I'd suggest playing around with the
| threshold a bit, or increasing the number of components between the
| base-point and the top. Maybe run them through a loop. ie:
|
| #declare YTran=0;
| #declare Scaler=1;
|
| blob {
|  threshold 0.65
|  #while (YTran <= 10)
|   sphere {0,1,1
|    scale Scaler
|    translate YTran*y
|   }
|   #declare YTran=YTran+0.25;
|   #declare Scaler=Scaler+0.1;
|  #end
|  pigment {rgb <0.65,0.8,0.65>}
| }
|
| The more components you use, the smoother the transition.
|
| David
|
|
|


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.